Multimedia Presentation Resumption within an Environment of Multiple Presentation Systems

ABSTRACT

With at least one implementation described herein, one or more viewers are able to watch the same source multimedia content at multiple locations within an environment (e.g., a household). With at least one implementation described herein, a viewer is able to resume watching such content at a new location (or “locus”) from the point that she bookmarked the content at an original location. This abstract itself is not intended to limit the scope of this patent. The scope of the present invention is pointed out in the appending claims.

RELATED APPLICATION

This application is a divisional of and claims priority to U.S. patentapplication Ser. No. 10/698,349, filed on Oct. 31, 2003, the disclosureof which is incorporated by reference herein.

TECHNICAL FIELD

This invention generally relates to a multimedia technology.

BACKGROUND

Digital cable and satellite have begun to change the nature of homeentertainment by vastly expanding the choices available to consumers.Digital Video Recorders and Video-On-Demand have made “appointment TV”unnecessary by putting the consumer in charge of when they wish to view.However, the problem of where to watch has been mostly unanswered bythese new devices.

In a typical home, a consumer is watching audio/visual (herein“multimedia”) content from one of several typical sources. Examples ofsuch typical sources include:

-   -   Video cassette recorder/player (VCR) and its video tapes;    -   DVD player/recorder and its DVD disks;    -   Digital video recorder (DVR) and its secondary storage device        (such as a hard disk). These are sometimes called personal video        recorders (PVRs); and    -   Live television (“Live TV”) broadcast via cable, satellite dish,        or antennae. This may include video-on-demand (VOD) or        pay-per-view (PPV).

Of course, these are just examples of typical sources and other suchsources may exist.

Base Scenario

The following describes the base scenario considered herein:

-   -   An environment has multimedia presentation systems at multiple        different loci in the environment. For example, a home may have        multiple television sets and each one is in a different room.        One may be in the living room, one in each of 3 bedrooms, and        another in the game room.    -   Multimedia content is being viewed at one of the presentation        systems at one of the loci. For example, a person is watching a        movie in the living room.    -   The viewer moves to another locus in the environment, but wishes        to continuing watching the same multimedia content that she was        viewing at the previous locus. For example, a person goes to the        bedroom, but wants to continue to watch the same movie that they        were watching in the living room.    -   More particularly, the viewer may want to continue watching the        same multimedia content at the new locus exactly at the point        where she ceased viewing the content at the previous locus. For        example, a person may go to the kitchen, but wants to continue        to watch the same movie exactly at the point where she paused it        in the living room.

Conventional Approaches

With all of the conventional approaches, each of the presentationsystems (e.g., televisions) at each locus (e.g., rooms) has its ownsource of the multimedia content. Examples of such sources include theVCR, DVD player, DVR, and Live TV.

None of the conventional approaches allow a viewer to pick-up apresentation of multimedia content in a new location, at the point wherethe viewer stopped viewing it in the original location.

The following describes how to accomplish this base scenario usingconventional approaches.

VCR: The viewer must stop the tape at the original locus and take itwith her to the new locus. The new locus must have its own VCR to playthe tape. The viewer may put the tape in the VCR at the new locus and itwill start playing where the viewer stopped it in the original locus.

DVD: The viewer must stop the DVD player at the original locus and takethe DVD disk with her to the new locus. The new locus must have its ownDVD player. When the viewer loads the DVD into the DVD player of the newlocation, the typical DVD players will start playing the DVD at the verybeginning. The user will have to manually jump ahead to a point on theDVD disk that is close to where she stopped viewing at the originallocus.

DVR: There is no conventional technology that allows the user toaccomplish this base scenario. Since the source of the multimediacontent remains in the DVR at the original locus, the viewer is not ableto pick exactly where she left off viewing in the original locus. If theDVR has a removable media, then this approach is more like the VCR orDVD approach.

Live TV: The viewer is not able to stop or pause live televisionbroadcast. The viewer may watch the same broadcast at another locus, butthe viewer will not be able to continue from exactly where she pausedthe broadcast at the original locus. While a DVR is capable of “pausing”live TV, there is no conventional technology that allows for the user toresume watching such paused live TV at another locus.

Alternative Scenario

In addition to the base scenario provided above, assume that anotherviewer wishes to continue to watch the multimedia content at theoriginal locus (or at another locus) when the first viewer leaves to goview the content at still another locus.

For example, assume that there are two people watching a recorded movie.One person “pauses” the movie and leaves the room to go to another roomin the house. However, the remaining person continues to watch themovie. The person who left the room wishes to resume watching the moviein a new room. Although another person continues to watch the movie inthe original room, the person who left the room wishes to resumewatching exactly where she “paused” it.

None of the current approaches addresses this alternative scenario.

SUMMARY

With at least one implementation described herein, one or more viewersare able to watch the same source multimedia content at multiplelocations within an environment (e.g., a household). With at least oneimplementation described herein, a viewer is able to continue watchingsuch content at a new location (or “locus”) from the point that shebookmarked the content at an original location.

This summary itself is not intended to limit the scope of this patent.Moreover, the title of this patent is not intended to limit the scope ofthis patent. For a better understanding of the present invention, pleasesee the following detailed description and appending claims, taken inconjunction with the accompanying drawings. The scope of the presentinvention is pointed out in the appending claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The same numbers are used throughout the drawings to reference likeelements and features.

FIG. 1 is a general environmental diagram intended to illustrate atypical environment suitable for at least one embodiment describedherein.

FIG. 2 is a general schematic diagram intended to illustrate a typicalenvironment suitable for at least one embodiment described herein.

FIG. 3 is a flow diagram showing a methodological implementationdescribed herein.

FIG. 4 is a flow diagram showing a methodological implementationdescribed herein.

FIG. 5 is a flow diagram showing a methodological implementationdescribed herein.

FIG. 6 is a flow diagram showing a methodological implementationdescribed herein.

FIG. 7 illustrates an exemplary graphical user interface (GUI) that maybe produced and/or used by at least one embodiment described herein.

FIG. 8 illustrates an exemplary graphical user interface (GUI) that maybe produced and/or used by at least one embodiment described herein.

FIG. 9 illustrates an exemplary graphical user interface (GUI) that maybe produced and/or used by at least one embodiment described herein.

FIG. 10 illustrates an exemplary graphical user interface (GUI) that maybe produced and/or used by at least one embodiment described herein.

FIG. 11 illustrates an exemplary graphical user interface (GUI) that maybe produced and/or used by at least one embodiment described herein.

FIG. 12 illustrates an exemplary graphical user interface (GUI) that maybe produced and/or used by at least one embodiment described herein.

FIG. 13 is a block diagram that illustrates components of an examplecomputing device of a multimedia hub of at least one embodimentdescribed herein.

FIG. 14 is a block diagram that illustrates components of an examplecomputing device of a presentation system of at least one embodimentdescribed herein.

DETAILED DESCRIPTION

In the following description, for purposes of explanation, specificnumbers, materials and configurations are set forth in order to providea thorough understanding of the present invention. However, it will beapparent to one skilled in the art that the present invention may bepracticed without the specific exemplary details. In other instances,well-known features are omitted or simplified to clarify the descriptionof the exemplary implementations of the present invention and, thereby,to better explain the present invention. Furthermore, for ease ofunderstanding, certain method steps are delineated as separate steps;however, these separately delineated steps should not be construed asnecessarily order dependent in their performance.

The following description sets forth one or more exemplaryimplementations of a Multimedia Presentation Resumption within anEnvironment of Multiple Presentation Systems that incorporate elementsrecited in the appended claims. These implementations are described withspecificity in order to meet statutory written description, enabling,and best-mode requirements. However, the description itself is notintended to limit the scope of this patent.

These exemplary implementations, described herein, are examples. Theseexemplary implementations do not limit the scope of the claimed presentinvention; rather, the present invention might also be embodied andimplemented in other ways, in conjunction with other present or futuretechnologies.

An example of an embodiment of a Multimedia Presentation Resumptionwithin an Environment of Multiple Presentation Systems may be referredto as an “exemplary resumption architecture.”

Herein, “presenting” includes communicating the multimedia content to adisplay and/or audio device. Herein, “broadcast media” refers to amultimedia transmission (such as a television or radio broadcast) beingreceived via at least one broadcast tuner.

Herein, “multi-TV” refers to the use of multiple multimedia presentationsystems (such as television equipment). This term presumes that themultiple presentation systems are dispersed across several differentlocations (or “loci”) in an environment. For example, a household mayhave multiple rooms, each with television equipment.

Herein, “bookmark & resume” of broadcast media effectively produces atime-shift of the broadcast media. It may appearsto the viewer that sheis “pausing” the broadcast media when she presses the “pause” button (orsome other designated button, like a “bookmark” button) for her DVR.However, in reality, the broadcast media broadcast continues, but theDVR records it for later presentation. When the viewer laterun-bookmarks (or “resumes”) the presentation of the broadcast media, theDVR plays the recorded content from the point that it was “bookmarked.”

When the user “bookmarks” broadcast media, she does not decide a priorito record the multimedia content being presented. Rather, such recordingof the content and later presentation of that content is performedautomatically by the DVR. It is typical for a DVR to automatically andcontinuously record multimedia content. And it may do so withoutspecific manual directions (e.g., pressing a “pause” button) from auser.

Herein, “multimedia content” includes digital video streams as well asaudio, music, DVDs, a slide show of digital images, and interactivecontent (e.g., games, the Internet, interactive TV). Moreover, digitalmultimedia content also includes content that has been converted fromthe analog domain, especially audio, video, and television.

Introduction

Unlike the conventional approaches, the exemplary resumptionarchitecture addresses and solves the base scenario and alternativescenario that are described in the BACKGROUND section above.

With the exemplary resumption architecture, one or more viewers are ableto watch the same source multimedia content at multiple locations (or“loci”) within an environment (e.g., a household). More particularly,with the exemplary resumption architecture, the viewer is able to resumewatching such content at a new location (or “locus”) from the point thatshe bookmarked the content at an original location. More particularlystill, with the exemplary resumption architecture, the viewer can do theabove while another viewer continues to watch the content at theoriginal location or at yet another location in the environment.

With the exemplary resumption architecture, all multimedia content on acentral hub is available to all presentation systems coupled to that hubTherefore, a viewer may effectively “move” the content that she iswatching from one location in the environment to another and continue towatch without missing any of the content.

Multi-TV Environment FIG. 1 shows an example of a typical environment100 in which the exemplary resumption architecture may be implemented.The typical environment 100 shown here includes multiple presentationsystems coupled together in a household. Of course, otherimplementations may be at other similar settings, such as apartmentbuildings, office buildings, school buildings, factories, etc.Implementations are not limited to an area defined by a structure, butmay extend a neighborhood, community, town, city, state, nation, globe,etc.

As shown in FIG. 1, the household includes a living room 110, a kitchen120, a bedroom 130, a bathroom 140, and a game room 150. Each room hasits own presentation systems. Those systems include:

-   -   television 112 and multimedia hub 114 in the living room 110;    -   television 122 and multimedia node 124 in the kitchen 120;    -   television 132 and multimedia node 134 in the bedroom 130;    -   television 142 and multimedia node 144 in the bathroom 140; and    -   television 152 and multimedia node 154 in the game room 150.

Although it is not shown in FIG. 1, these presentation systems arecommunicatively coupled to each other. In other words, they arenetworked together. In this way, the hub may communicate with the nodes.

Each of these presentation systems includes a multimedia presentationdevice (e.g., a television) and a multimedia hub or node. For example,the system in the bedroom 130 includes the television 132 and itsmultimedia node 134. This node (or hub) is sometimes called a set-topbox.

The set-top box is coupled to its television for presentation of themultimedia content (e.g., audio data and video data) received by thepresentation system, as well as a graphical user interface (GUI). Aparticular set-top box may be coupled to any number of televisionsand/or similar devices that may be implemented to display or otherwiserender content.

The hub 114 may be implemented in any number of embodiments, includingas a set-top box, a satellite receiver, a TV recorder with a hard disk,a game console, an information appliance, a DVD player, a DVR, apersonal computer, a home media center, and so forth. The hub will haveat least some form of DVR components and functionality. In particular,it will have a storage device capable of storing recorded multimediacontent or “bookmarking” broadcast media.

The nodes may also be implemented in any number of embodiments, but theydo need as much functionality as the hub 114 since the hub services thenodes. Therefore, they need; at least; to be able to communicate withthe hub and to receive multimedia content from the hub.

In the exemplary environment 100 shown in FIG. 1, the set-top boxes(such as hub 114 and node 134) are shown as standalone units thatconnect to their televisions. Alternatively, the various components andfunctionality of the set-top box are incorporated into the television,rather than using two separate devices.

FIG. 2 illustrates another exemplary environment 200 in which thetechniques, systems, and other aspects described herein may beimplemented (partially or wholly). Exemplary environment 200 is atelevision entertainment architecture that facilitates distribution ofmultimedia content. At least a portion of this environment correspondsto the exemplary environment 100 shown in FIG. 1.

FIG. 2 shows a centralized multimedia presentation system 210 coupled toone or more presentation systems 220, 230, 240, and 250 over acommunications network 205. The centralized multimedia presentationsystem 210 includes a hub 214 with its television 212.

The communications network 205 may include any communicative media aslong as it is capable of satisfactorily transmitting multimedia contentfrom the hub to a node. Examples of such communicative media include(for example): a cable television network, RF, microwave, satellite,and/or data network, such as the Internet, and may also include wired orwireless media. As long as multimedia content transmission issatisfactory, the communications network 205 may be any type of network,using any type of network topology and any network communicationprotocol, and may be represented or otherwise implemented as acombination of two or more networks.

The centralized multimedia presentation system 210 has one or moretuners for receiving incoming multimedia content from one or moresources of such content. Indeed, each source may have one or moretuners. Such tuners may include in-band tuners that tune to variousfrequencies or channels to receive television signals. These tuners maybe digital tuners, analog tuners, or any combination of analog anddigital components used to get digital data into the centralizedmultimedia presentation system 210.

Alternatively, the centralized multimedia presentation system 210 of theexemplary resumption architecture may not have any tuners. Instead oftuning and demodulating an incoming multimedia signal, the system mayreceive streamed content via another mechanism that does not employtuners. For example, it may received the streamed content via a packetprotocol.

The centralized multimedia presentation system 210 has enough tuners toservice the needs of the exemplary resumption architecture. If there arean insufficient number of tuners to meet the needs, then the exemplaryresumption architecture will have a strategy for allocating the tuningresources.

The sources of multimedia data from which the tuners may receive contentmay include (for example):

-   -   a cable broadcast system 260 over a cable broadcast network 262;    -   a satellite broadcast system which is received by a satellite        dish 264 from an orbiting satellite 265; and    -   a live television broadcast from a local broadcast antenna 266.

Furthermore, the centralized multimedia presentation system 210 maystore multimedia content on its internal storage system (as a DVR does)or from other storage media (such as a DVD). Alternatively, multimediacontent may be at another communicatively coupled location on thenetwork rather than on the hub. For example, a location may have acentralized storage location for such content. Also, for example, acable headend may maintain storage for many subscribers. Moreover, thestorage may be maintained via a federation of hubs and nodes where eachshares their own available storage.

The cable broadcast system 260 may provide broadcast media havingmultimedia content, such as movies, television programs, live feeds,video-on-demand, pay-per-view, commercials, music, and similar audioand/or video content. The cable broadcast network 262 may include acable television network, RF, microwave, satellite, and/or data network,such as the Internet, and may also include wired or wireless media.Furthermore, it may be any type of network, using any type of networktopology and any network communication protocol, and may be representedor otherwise implemented as a combination of two or more networks.

Bookmarks

When a bookmark command is received while a multimedia content is beingpresented, the centralized multimedia presentation system 210 of theexemplary resumption architecture stores a “bookmark” indicative of thatpoint in the presentation.

Each bookmark will be associated with a particular multimedia contentand will identify the location for which the bookmark was created withinthe presentation of the multimedia content. The bookmark may have manyother properties associated with it as well. Examples of these otherproperties may include (but are not limited to):

-   -   identifying the particular multimedia content that is        “bookmarked;”    -   identifying the physical or logical location where the content        was “bookmarked (i.e, which device through which the bookmark        was set);”    -   this may be thought of as identifying relative time within the        content;    -   identifying the user who “bookmarked” the content; and    -   absolute chronological time/date (i.e., this is the time at        which the bookmark was set—not the relative time within the        content, but the actual GMT time that the user requested the        bookmark to be set).

For example, a bookmark for Program X may indicate that “John”bookmarked the presentation of Program X in the “living room” at arelative time of 1:05:35 into the presentation and did so on Tuesday,Sep. 23, 2003 at 8:43 pm.

Furthermore, when presented on GUI, the bookmarks have visiblecharacteristics so that they are differentiated from each other. Forexample, bookmarks for “Jane” may be red to distinguish them from theblue bookmarks of “John.” In another example, differing types ofbookmarks may use different icons to distinguish them.

Operation of the Exemplary Resumption Architecture

With the exemplary resumption architecture, a user may bookmark anystored content on one presentation system and resume it on any other(within the network environment).

At an original location, the user “bookmarks” the multimedia content(“program”) that she is watching. The presentation system at theoriginal location creates and stores a bookmark. This original locationmay be called the “bookmark location” or “bookmark locus.” Now that thepresentation has been “bookmarked,” the user may access it on apresentation system at another location in the networked environment.

The presentation system in the new location retrieves the bookmark andpresents a GUI that asks if the user wants to resume playing the contentthat was bookmarked from the bookmark's location. If there are multiplebookmarks, multiple locations are presented. This new location may becalled the “resume location” or “resume locus.”

When a user (of any presentation system in the networked environment)queries for information about a particular multimedia content (herein,“program”), a resume option is provided if there is a bookmark storedfor that program. If there is more than one bookmark for a particularprogram, then option to “resume from . . . ” is provided so that theuser may select which bookmark. If the user selects the “resume from . .. ” option, an interface containing the list of locations is presented.

Broadcast Media

A system does not need tuners to present stored multimedia content.However, with broadcast media, the system must have at least one tunerto receive the broadcast. This broadcast media includes typicalbroadcast television, typical cable broadcasts, reception ofvideo-on-demand (VOD), and reception of pay-per-view (PPV).

With broadcast media, the user can “bookmark” the broadcast mediacontent at any point. The hub records the broadcast media content usinga tuner. When the user moves to another location, the user may pick-upwatching the broadcast media content at the point of the “bookmark.”When the user “resumes,” the hub provides the just recorded content forthe “broadcast media” as it continues to record what it is receiving onthe tuner.

The exemplary resumption architecture tracks the state of all livecontent being consumed by every system in the environment. This includeslive content that is playing and live content that is “bookmarked.”

Whenever the user requests information on a live program, the exemplaryresumption architecture presents a GUI with information (such as starttimes and length of program) about the live program. Broadcast mediaprograms appearing in an electronic program guide GUI may contain iconsdenoting that they contain one or more bookmarks. In other words, theicon indicates that the presentation of this broadcast media program wasbookmarked somewhere at sometime. When the user selects this program,she is given the option to resume (from one or more bookmarks) or watchactual live broadcast.

If a user wishes to bookmark live content and resume in anotherlocation, the exemplary resumption architecture may use tuner swapping,where the state regarding the playback of content on the two devices isexchanged. Alternatively, it employs tuner sharing, by allowing multipledevices to play back the same shared content while keeping independentstate.

If a user wishes to bookmark live content and resume in anotherlocation, there are at least two approaches available. The first iscalled tuner-swapping. With this, the state regarding the playback ofcontent on the two systems (the original location and the new locationwhere the content is resumed) is exchanged. The second is calledtuner-sharing. With this, the exemplary resumption architecture allowsfor multiple devices to playback the same shared content while keepingindependent state.

One way to accomplish tuner swapping is for the “source” location togive up tuner to “destination” location. Thus, the destination will haveaccess to the media content “pause” buffer attached to the particulartuner, but source will not.

Practical example of this: Users A and B are watching time delayedbroadcast media on channel 5 in living room. If A moves to the bedroom,B has 3 choices: go with A to bedroom and continue watching timedelayed, stay in living room and watch another channel, or see channel 5go live, thus missing the content in the pause buffer.

Instead of “tuner swapping,” the tuner may be shared. The “source” and“destination” share tuner and the “pause” buffer. Practical example:Same situation as above, however, B can continue to watch time delayedcontent in the living room.

With bookmarked broadcast media, the presentation system at the resumelocation reads from the same storage as the presentation system at thebookmark location and synchronizes its state at that time. No furthersynchronization is needed or desired. The users of systems at bothlocations (the original bookmark location and the new resume location)are free to watch the content as they see fit.

Again, the exemplary resumption architecture may employ either tuner“swapping” or “sharing.” Alternatively, it may employ anotherfunctionally equivalent option.

Methodological Implementations of the Exemplary Pull-Based ResumptionArchitecture

FIG. 3 shows a methodological implementation of the exemplary resumptionarchitecture. This methodological implementation may be performed insoftware, hardware, or a combination thereof.

This methodological implementation is focused on bookmarking multimediacontent (stored or broadcast media) in response to a viewer's action(such as bookmarking a presentation). More particularly, it is focusedon a pull-based model, where the system at the resume location providesa user interface for initiating the resumption of the presentation.

At 310 of FIG. 3, the exemplary resumption architecture determines ifthe viewer has performed one of the designated actions while interactingwith a presentation system at the bookmark locus. If not, it just waitsuntil such action occurs. If so, it proceeds to block 312.

Examples of designated actions that may trigger proceeding to block 312include (but are not limited to) the following:

-   -   While watching a stored program,        -   the user chooses to watch a broadcast media channel;        -   the user goes to recorded shows list and starts watching            another show;        -   the user goes to a VOD menu and selects to watch a VOD            program; or        -   the user goes to a page without a TV control (e.g., the user            has accessed a user interface which does not present the            current video stream);        -   the user presses the “pause” key or a dedicated “bookmark”            key (on a remote control, on the system, or via a GUI).    -   While watching a VOD program,        -   the user chooses to watch a broadcast media channel;        -   the user goes to recorded shows list and starts watching a            recorded show;        -   the user goes to a VOD menu and selects to watch another VOD            program; or        -   the user goes to a page without a TV control (e.g., the user            has accessed a user interface which does not present the            current video stream);        -   the user presses the “pause” key or a dedicated “bookmark”            key (on a remote control, on the system, or via a GUI).    -   While watching a broadcast media program,        -   the user chooses to watch another broadcast media channel;        -   the user goes to recorded shows list and starts watching a            recorded show;        -   the user goes to a VOD menu and selects to watch a VOD            program; or        -   the user presses the “pause” key or a dedicated “bookmark”            key (on a remote control, on the system, or via a GUI).

At 312, it generates a “bookmark” in the current point of presentationof the stored multimedia content being presented on the presentationsystem.

At 314, the exemplary resumption architecture defines one or moreproperties associated with the bookmark and stores the bookmark inassociation with the stored multimedia content. Examples of the types ofproperties are discussed above in the section titled, “Bookmarks.”

Since this is the pull-based model, the hub simply waits for a system ata resume location to request the bookmarked program before actuallystreaming it to another system on the networked environment.

Although the program's presentation has been bookmarked (so that it canbe resumed in another location), it is possible for the program'spresentation may continue at the original location as well. For example,two people are watching a broadcast media program. One person bookmarksthe program and goes to resume watching it in another room in thehousehold. However, the other person may remain in the room and continueto watch the program at the original location.

FIG. 4 shows a methodological implementation of the exemplary resumptionarchitecture. This methodological implementation is focused on resuminga bookmarked presentation of multimedia content (stored or broadcastmedia) at another location. This methodological implementation may beperformed in software, hardware, or a combination thereof.

At 410 of FIG. 4, a presentation system at the resume locus(“resume-locus system”) presents a graphical user interface (GUI).Examples of such GUIs are shown in FIGS. 7-13 and discussed in thecorresponding text below.

At 412, it receives an indication based on the user's interaction withthe GUI that the user wishes to view a particular program that has beenbookmarked.

At 414, the resume-locus system requests (from the multimedia hub) theparticular program to start from the point of the selected bookmark.

At 416, the resume-locus system receives (from the hub) the particularprogram from the point of the selected bookmark. It presents the programfrom that point.

Since this is the pull-based model, the resume-locus system initiatesthe resumption of a bookmarked multimedia content rather than thebookmark-locus system.

Methodological Implementations of the Exemplary Push-Based ResumptionArchitecture

FIG. 5 shows a methodological implementation of the exemplary resumptionarchitecture. This methodological implementation may be performed insoftware, hardware, or a combination thereof.

This methodological implementation is focused on bookmarking multimediacontent (stored or broadcast media) in response to a viewer's action(such as bookmarking a presentation). More particularly, it is focusedon a push-based model, wherein the hub streams (or “pushes”) thebookmarked program to a selected system at the resume location.

With this push-based approach, the user is asked where to “move” thebookmarked program once the user has bookmarked it. It is very“discoverable” in the sense of ease-of-use. When the person arrives atthe resume location, she only needs to indicate that she is ready andthe bookmarked program continues at that new location.

At 510 of FIG. 5, the exemplary resumption architecture determines ifthe viewer has performed one of the designated actions while interactingwith a presentation system at the bookmark locus. If not, it just waitsuntil such action occurs. If so, it proceeds to block 512.

Examples of which designated actions may trigger proceeding to block 512are listed above in the discussion of block 310 of FIG. 3.

At 512, it generates a “bookmark” in the current point of presentationof the stored multimedia content being presented on the presentationsystem.

At 514, the exemplary resumption architecture defines one or moreproperties associated with the bookmark and stores the bookmark inassociation with the stored multimedia content. Examples of the types ofproperties are discussed above in the section titled, “Bookmarks.”

At 516, it receives the viewer's selection for the resume location,which is where the viewer plans to continue viewing the bookmarkedpresentation. This can be done in many ways. For example, a GUI maypresent several selected location options, and the viewer chooses one.Alternatively, the viewer may choose multiple locations or alllocations.

At 518, the hub sends a notification (or some form of communication) tothe presentation system at the resume location. This notification willindicate that this system is the resume system for a particularpresentation. In response to this notification, the resume system maypresent a message (such as “Resume Bookmarked Program?”) that will allowthe viewer to choose when to continue upon entering the new location.

FIG. 6 shows a methodological implementation of the exemplary resumptionarchitecture. This methodological implementation is focused on resuminga bookmarked presentation of multimedia content (stored or broadcastmedia) at another location. This methodological implementation may beperformed in software, hardware, or a combination thereof.

At 610 of FIG. 6, in response to this notification (of block 518 of FIG.5), a presentation system at the resume locus (“resume-locus system”)presents a message (such as “Resume Bookmarked Program?”) that willallow the viewer to choose when to continue viewing upon entering thenew location. Of course, it may present any other equivalent messageand/or GUI.

Furthermore, it may also present a graphical user interface (GUI).Examples of such GUIs are shown in FIGS. 7-13 and discussed in thecorresponding text below.

At 612, the resume-locus system receives an indication based on theuser's interaction that the user is ready to continue the bookmarkedprogram.

At 614, it requests the bookmarked program from the multimedia hub fromthe point of the bookmark.

At 616, the resume-locus system receives from the hub the particularprogram from the point of the bookmark. It presents the program fromthat point.

Since this is the push-based model, the bookmark-locus system initiatesthe resumption of a bookmarked multimedia content rather than theresume-locus system.

Examples of Graphical User Interfaces

FIGS. 7-13 illustrate examples of GUIs that may be employed by theexemplary resumption architecture. Of course, other GUIs may be employedand variations of these exemplary GUIs may be employed. Unless otherwisestated, these GUIs are presented by the presentation system at theresume locus (“resume-locus system”).

If desired, the exemplary resumption architecture may limit the displayof bookmarks in the GUI. For example, it may only list bookmarks forprograms that have been bookmarked during the last thirty minutes (orsome other defined time interval).

Bookmarks Per Program

FIG. 7 illustrates an example GUI that displays all of the currentbookmarks for the same particular multimedia presentation. In thisexample, that presentation is the “Lord of the Rings.” In this example,each different bookmark is identified by the location where thepresentation was bookmarked. At 710, the GUI asks from where the userwould like to resume. At 712, the GUI provides a list of the currentlocations where the “Lord of the Rings” was bookmarked. It lists “LivingRm,” “Bedroom 1,” “Bedroom2,” “Kitchen,” and “Den.”

Alternatively, the GUI may list other properties of the bookmark. Forexample, it may be listed by the following properties:

-   -   the relative time within the presentation that it was        bookmarked;    -   the absolute time (e.g., 8:34:43 pm) that it was bookmarked (as        shown in FIG. 8);    -   who bookmarked it;    -   most recently bookmarked bookmarks, in order; and

category of the programming.

It may provide a selectable option to choose which way to view thelisted properties. Furthermore, it may list multiple properties of thebookmarks. For example, it may indicate who, at what time, at whatlocation.

Most Recent Bookmarks Per Program

FIG. 8 illustrates an example GUI that displays just the most recentlybookmarked programs for the same particular multimedia presentation. TheGUI provides a list of the most recently bookmarked programs 810. Itprovides an absolute timestamp with the listings.

Bookmarks GUI

FIGS. 9 and 10 illustrate example GUIs that display just the bookmarkedprograms. The GUI provides a list of the current programs that arebookmarked at 910 in FIG. 9 and 1010 in FIG. 10.

In the example in FIG. 9, this screen of the GUI shows four programsthat are bookmarked. Of course, there may be more that the user mayscroll up or down to see (or use some other available browsing method).

Alternatively, the GUI may list a subset of all of the bookmarks. Thissubset is selected based upon one or more properties. For example, theGUI may list:

-   -   identity of the multimedia content;    -   relative point of bookmark during the presentation;    -   most recently bookmarked multimedia programs;    -   category of multimedia content bookmarked;    -   locus of system where the presentation was bookmarked;    -   identity of user who manually bookmarked the presentation;    -   chronological time of the bookmark generating;    -   chronological date of the bookmark generating; and    -   relative time during the presentation where the presentation was        bookmarked.

Broadcast Media

FIGS. 11 and 12 illustrate examples of GUIs that display a grid ofbroadcast media programming. This may include broadcast television, VOD,PPV, cable television, satellite television, and the like.

Unlike a typical broadcast media grid, the GUI illustrated in FIGS. 11and 12 show a “bookmark” icon for the broadcast media that is currentlybookmarked. In this example, KGO (channel 7) is currently showing“General Hospital” at 1110. A portion of the grid includes a “bookmark”icon 1112. It is circled here to make it easier to find in thisillustration. Furthermore, the description of the currently highlightedprogram may indicate at 1114, the amount of time left from thebookmarked location in the bookmarked broadcast media program. FIG. 12shows “bookmark” icon 1212 in a multiple grid view.

Alternatively, rather than listing the bookmarked broadcast mediaprograms along with non-bookmarked programs, a GUI may present only thebookmarked broadcast media programs. In this alternative, there is noneed to present a “bookmark” icon because all of the displayedprogramming in this GUI is bookmarked.

Resume from . . .

The “resume from . . . ” GUI may be a simple message (such as “ResumeBookmarked Program?”) presented on the screen of the resume-locus systemand have simple “OK” and “cancel” options. Alternatively, it may have aninterface that is more graphic and interactive.

DVD Pause and Resume

The above functionality applies to multimedia presentations from a DVDdisk. However, it does not need to use a tuner since the content comesfrom the DVD reader in the hub (or attached thereto).

The DVD content may continue to be presented at the location where itwas bookmarked. So, a person who remains in the room may continue towatch the DVD. The person who left the room may choose to resume thepresentation of the DVD in another room. Much like the broadcast mediascenario described above, the hub will receive the stored content (whichhas just been recorded from the DVD) for the user to watch.

Alternatively, the exemplary resumption architecture may note thelocation on the DVD when the user pauses or bookmarks it. Then the userremoves the DVD. At a later time, the user may reinsert the DVD into thesame system or another one in the networked environment. The systemidentifies the DVD and provides a GUI with the option to resume playingthe DVD at the point it was last bookmarked.

Exemplary Multimedia Server

FIG. 13 illustrates an exemplary implementation of the multimedia server(“hub”) 214. More particularly, it illustrates selected components ofthe system 220 shown in FIG. 2.

The system 220 includes a first tuner 1300 and one or more additionaloptional tuners 1302. The tuners 1300 and 1302 may be digital tuners,analog tuners, or any combination of analog and digital components usedto get digital data into the system 220.

The hub also includes one or more processors 1304 and one or more memorycomponents. Examples of possible memory components include a randomaccess memory (RAM) 1306, a disk drive 1308, a mass storage component1310, and a non-volatile memory 1312 (e.g., ROM, Flash, EPROM, EEPROM,etc.).

Alternative implementations of system 220 may include a range ofprocessing and memory capabilities, and may include more or fewer typesof memory components than those illustrated in FIG. 13.

Processor(s) 1304 process various instructions to control the operationof the system 220 and to communicate with other electronic and computingdevices. The memory components (e.g., RAM 1306, disk drive 1308, storagemedia 1310, and non-volatile memory 1312) store various informationand/or data such as multimedia content, electronic program data, webcontent data, configuration information for the hub, and/or graphicaluser interface information. The device may cache data into any one ofthese many memory components.

An operating system 1314 and one or more application programs 1316 maybe stored in non-volatile memory 1312 and executed on processor 1304 toprovide a runtime environment. A runtime environment facilitatesextensibility of system 220 by allowing various interfaces to be definedthat, in turn, allow application programs 1316 to interact with system220.

The application programs 1316 that may be implemented on the hub mayinclude, for example, an electronic program guide (EPG), an emailprogram to facilitate electronic mail, and so on.

The system 220 may also include other components pertaining to atelevision entertainment system which, for simplicity, are notillustrated in this example. For instance, the hub can include a userinterface application and user interface lights, buttons, controls, etc.to facilitate viewer interaction with the device.

Input interface 1326 (e.g., serial, parallel, infrared, etc.) andnetwork interface 1324 allow the hub to interact and communicate withother electronic and computing devices via various communication links.Furthermore, the input interface 1326 may ultimately allow a user toprovide input into the hub. Although not shown, the hub may also includeother types of data communication interfaces to communicate with otherdevices.

The system 220 may include a modem 1328 or other communications devicethat facilitates communication with other electronic and computingdevices via a conventional telephone line or other communicationsmediums.

The system 220 has the ability to receive digital data, and it mayreceive it using the tuners 1300 or 1302, the network interface 1324,the modem 1328, or other communications device.

The system 220 may also include an audio/video output 1330 that providessignals to a presentation device (e.g., television) or other device thatprocesses and/or presents or otherwise renders the audio and video data.This output may be called the display.

The system 220 also includes a bookmark and resume module 1340 thatpartially or wholly implements the exemplary resumption architecture. Itmay be an application program or a hardware component.

Although shown separately, some of the components of the hub may beimplemented in an application specific integrated circuit (ASIC).Additionally, a system bus (not shown) typically connects the variouscomponents within the hub.

A system bus may be implemented as one or more of any of several typesof bus structures, including a memory bus or memory controller, aperipheral bus, an accelerated graphics port, or a local bus using anyof a variety of bus architectures. By way of example, such architecturescan include a CardBus, Personal Computer Memory Card InternationalAssociation (PCMCIA), Accelerated Graphics Port (AGP), Small ComputerSystem Interface (SCSI), Universal Serial Bus (USB), IEEE 1394, a VideoElectronics Standards Association (VESA) local bus, and a PeripheralComponent Interconnects (PCI) bus, also known as a Mezzanine bus.

Exemplary Multimedia Presentation System

FIG. 14 illustrates an exemplary implementation of a node multimediapresentation system, such as system 220 of FIG. 2.

The system 220 includes one or more processors 1404 and one or morememory components. Examples of possible memory components include arandom access memory (RAM) 1406 or other a non-volatile memory (e.g.,ROM, Flash, EPROM, EEPROM, etc.).

Alternative implementations of system 220 may include a range ofprocessing and memory capabilities and may include more or fewer typesof memory components than those illustrated in FIG. 14.

Processor(s) 1404 process various instructions to control the operationof the system 220 and to communicate with other electronic and computingdevices. The memory components store various information and/or datasuch as multimedia content, electronic program data, web content data,configuration information for the system, and/or graphical userinterface information. The device may cache data into any one of thesemany memory components.

An operating system 1414 and one or more application programs 1416 maybe stored in non-volatile memory and executed on processor 1404 toprovide a runtime environment. A runtime environment facilitatesextensibility of system 220 by allowing various interfaces to be definedthat, in turn, allow application programs 1416 to interact with system220.

Input interface 1426 (e.g., serial, parallel, infrared, etc.) andnetwork interface 1424 allow the node to interact and communicate withother electronic and computing devices via various communication links.Furthermore, the input interface 1426 may ultimately allow a user toprovide input into the node. Although not shown, the node may alsoinclude other types of data communication interfaces to communicate withother devices.

The system 220 may also include other components pertaining to atelevision entertainment system, which, for simplicity, are notillustrated in this example. For instance, the system can include a userinterface application and user interface lights, buttons, controls, etc.to facilitate viewer interaction with the device.

The system 220 may also include an audio/video output 1430 that providessignals to a presentation device (e.g., television) or other device thatprocesses and/or presents or otherwise renders the audio and video data.This output may also be called a multimedia rendering unit.

The system 220 also includes a resume module 1440 that partially orwholly implements the exemplary resumption architecture. It may be anapplication program or a hardware component.

Although shown separately, some components of the system may beimplemented in an application specific integrated circuit (ASIC).Additionally, a system bus (not shown) typically connects the variouscomponents within system.

The node may also have a system bus may be implemented as one or more ofany of several types of bus structures like those described above forthe hub.

Processor-Executable Instructions

An implementation of an exemplary resumption architecture may bedescribed in the general context of processor-executable instructions,such as program modules, executed by one or more computers or otherdevices. Generally, program modules include routines, programs, objects,components, data structures, etc. that perform particular tasks orimplement particular abstract data types. Typically, the functionalityof the program modules may be combined or distributed as desired invarious embodiments.

Processor-Readable Media

An implementation of an exemplary resumption architecture may be storedon or transmitted across some form of processor-readable media.Processor-readable media may be any available media that may be accessedby a computer. By way of example, and not limitation, processor-readablemedia may comprise “computer storage media” and “communications media.”

“Computer storage media” include volatile and non-volatile, removableand non-removable media implemented in any method or technology forstorage of information such as processor-readable instructions, datastructures, program modules, or other data. Computer storage mediaincludes, but is not limited to, RAM, ROM, EEPROM, flash memory or othermemory technology, CD-ROM, digital versatile disks (DVD) or otheroptical storage, magnetic cassettes, magnetic tape, magnetic diskstorage or other magnetic storage devices, or any other medium, whichmay be used to store the desired information and which may be accessedby a computer.

“Communication media” typically embodies processor-readableinstructions, data structures, program modules, or other data in amodulated data signal, such as carrier wave or other transportmechanism. Communication media also includes any information deliverymedia.

The term “modulated data signal” means a signal that has one or more ofits characteristics set or changed in such a manner as to encodeinformation in the signal. By way of example and not limitation,communication media includes wired media such as a wired network ordirect-wired connection, and wireless media such as acoustic, RF,infrared, and other wireless media. Combinations of any of the above arealso included within the scope of processor-readable media.

CONCLUSION

Although the invention has been described in language specific tostructural features and/or methodological steps, it is to be understoodthat the invention defined in the appended claims is not necessarilylimited to the specific features or steps described. Rather, thespecific features and steps are disclosed as preferred forms ofimplementing the claimed invention.

1. A multimedia presentation system, which is configured to becommunicatively coupled to, at least, one multimedia server via acommunications network, the presentation system comprising: a multimediarendering unit configured to present multimedia content and one or moreuser interfaces (Uls); and a computing unit configured to communicatewith the multimedia server via a communications network and furtherconfigured to generate a UI for presentation on the presentation device,wherein the UI generated by the computing unit and rendered by themultimedia rendering unit graphically illustrates two or more of thefollowing: identity of one or more bookmarked multimedia programs;relative point of bookmark during presentation of one or more bookmarkedmultimedia programs; most recently bookmarked multimedia programs;category of one or more bookmarked multimedia programs; locus of whichsystem in the communications network where one or more bookmarkedmultimedia programs were bookmarked; identity of user who manuallybookmarked one or more bookmarked multimedia programs; chronologicaltime of the bookmark of one or more bookmarked multimedia programs;chronological date of the bookmark of one or more bookmarked multimediaprograms; relative time of the bookmark of one or more bookmarkedmultimedia programs; graphical depiction of relative time of that one ormore bookmarked multimedia programs were bookmarked.
 2. A system asrecited in claim 1, wherein the computing unit is further configured togenerate and store at least two bookmarks associated with a particularmultimedia content.
 3. A system as recited in claim 1 further comprisinga user-interface control panel configured to receive user-input actionthat triggers generation of a bookmark, such action is selected from agroup consisting of: selection of another source of multimedia content;viewing a list of other sources of multimedia content; manually pressing“pause” key; manually pressing “bookmark” key; and manually pressinganother pre-defined key or choosing a pre-defined option.
 4. A system asrecited in claim 1, wherein properties associated with a bookmark areselected from a group consisting of: identity of the multimedia content;relative point of bookmark during the presentation; most recentlybookmarked multimedia programs; category of multimedia contentbookmarked; locus of system where the presentation was bookmarked;identity of user who manually bookmarked the presentation; chronologicaltime of the bookmark generating; chronological date of the bookmarkgenerating; relative time during the presentation where the presentationwas bookmarked.
 5. A system as recited in claim 1, wherein the computingunit is further configured to perform acts, those acts comprising:generating a “bookmark” at a point during a presentation of a multimediaprogram; associating one or more properties with the generated bookmark,wherein such properties comprise more than just the identity of themultimedia content and point of bookmark within that presentation;storing the generated bookmark with its one or more properties.
 6. Asystem as recited in claim 5, wherein the computing unit is furtherconfigured to store multiple bookmarks for the multimedia program,wherein each bookmark has one or more properties associated therewith.7. A system as recited in claim 5, wherein the computing unit is furtherconfigured to determine whether an action performed by a user is onewhich is designated to generate a bookmark and, if so, proceeding withgenerating, associating, and storing.
 8. A system as recited in claim 5,wherein the computing unit is further configured to determine whether anaction performed by a user is one which is designated to generate abookmark while stored multimedia content is being presented and, if so,proceeding with generating, associating, and storing, wherein the actionthat is designated to generate a bookmark is selected from a groupconsisting of: selecting another source of multimedia content; viewing alist of other sources of multimedia content; manually pressing a “pause”key; manually pressing a “bookmark” key; manually pressing anotherpre-defined key or choosing a pre-defined option.
 9. A system as recitedin claim 1, wherein properties associated with the bookmark are selectedfrom a group consisting of: locus of system where the presentation wasbookmarked; identity of user who manually bookmarked the presentation;chronological time of the bookmark generating; chronological date of thebookmark generating; relative time during the presentation where thepresentation was bookmarked.
 10. A system as recited in claim 5, whereinthe computing unit is further configured to receive the multimediaprogram as part of a broadcast media transmission.
 11. A system asrecited in claim 5, wherein the computing unit is further configured toreceive the multimedia program as part of a broadcast mediatransmission, wherein the broadcast media transmission is selected froma group consisting of incoming live television broadcast, incoming livecable television signal, incoming live satellite signal, incoming livevideo-on-demand signal, and incoming live pay-per-view signal.
 12. Asystem as recited in claim 5, wherein the computing unit is furtherconfigured to receive an indication of where to stream a resumption ofthe presentation of the multimedia program amongst a collection ofmultiple loci where the presentation may be resumed, and stream anotification to the selected resumption locus.